#include <iostream>
#include <spdlog/spdlog.h>
#include <spdlog/sinks/stdout_color_sinks.h>
#include <spdlog/sinks/basic_file_sink.h>
int main()
{
    //刷新策略，每秒刷新
    spdlog::flush_every(std::chrono::seconds(1));
    //级别大于等debug刷新
    spdlog::flush_on(spdlog::level::level_enum::debug);
    //全局刷新等级
    spdlog::set_level(spdlog::level::level_enum::debug);
    //创建同步日志器
    //默认情况下为同步日志器,使用多线程_mt,_st 单线程
    std::shared_ptr<spdlog::logger> logger = spdlog::stdout_color_st("default-logger");
    //设置同步日志器刷新策略，全局设置后就可以不用设置
    // logger->flush_on(spdlog::level::debug);
    // logger->set_level(spdlog::level::debug);
    //设置刷新格式
    logger->set_pattern("[%n][%H:%M:%S][%t][%-10l][%v]");
    std::string str = "hello word";
    logger->warn("你好！{} {}", "小明", str);
    logger->debug("你好！{}", "小明");
    logger->info("你好！{}", "小明");
    logger->warn("你好！{}", "小明");
    logger->error("你好！{}", "小明");
    logger->critical("你好！{}", "小明");
    std::cout << "日志输出演示完毕！\n";
    return 0;
}